using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Data.SqlClient; 
using Marlimer.Common;
using Marlimer.Common.Entidades;
using Marlimer.Common.EntidadesGrilla;
using Marlimer.Data.Comercial;

namespace Marlimer.Logical.Comercial
{
    public class lcom_DocumentoCab
    {
        com_DocumentoCab com_documentocab = new com_DocumentoCab();

        public long existeDocumento(int ctip_docvta, int cnum_serie, long cnum_docvta)
        {
            return com_documentocab.existeDocumento(ctip_docvta, cnum_serie, cnum_docvta); 
        }

        public resulOMsgError guardarDocumento(InfoDocumentoCab doc)
        {
            return com_documentocab.guardarDocumento(doc); 
        }

        public resulMsgError activarDocumento(long ccod_doc, int ctip_docvta)
        {
            return com_documentocab.activarDocumento(ccod_doc, ctip_docvta);
        }

        public DataTable consultaDocumento(int ctip_docvta, int ccod_condvta, DateTime dfec_ini,
                DateTime dfec_fin, int cnum_serie, long cnum_desde, long cnum_hasta, int ccod_ruta,
                String ccod_modulo, int ccod_trans, int ccod_cli, int flg_anulados, int ctip_bus)
        {
            return com_documentocab.consultaDocumento(ctip_docvta, ccod_condvta, dfec_ini, dfec_fin, cnum_serie,
                    cnum_desde, cnum_hasta, ccod_ruta, ccod_modulo, ccod_trans, ccod_cli, flg_anulados, ctip_bus); 
        }

        public DataTable DocumentoCabByCod(long ccod_doc)
        {
            return com_documentocab.DocumentoCabByCod(ccod_doc);  
        }

        public DataTable DocumentoCabByCodForPago(long ccod_doc)
        {
            return com_documentocab.DocumentoCabByCodForPago(ccod_doc);
        }

        public DataTable DocumentoDetByCod(long ccod_doc)
        {
            return com_documentocab.DocumentoDetByCod(ccod_doc);
        }


        public resulMsgError autorizarDocumento(long ccod_doc, int ccod_user, int flg_autoriza)
        {
            return com_documentocab.autorizarDocumento(ccod_doc, ccod_user, flg_autoriza);    
        }

        public resulMsgError documentosFromPedido(int ccod_cia, int cnum_serie, long cnum_inidoc, long cnum_findoc,
                    DateTime dfec_emi, DateTime dfec_ent, int ctip_docvta, int ccod_ruta, int ccod_cli){
            return com_documentocab.documentosFromPedido(ccod_cia, cnum_serie, cnum_inidoc, cnum_findoc, dfec_emi, dfec_ent, ctip_docvta, ccod_ruta, ccod_cli);       
        }

        public DataTable MostrarDocumentosToAsignar(DateTime dfec_ent, int ctip_docvta, int ccod_ruta, String ccod_modulo, int ccod_cli)
        {
            return com_documentocab.MostrarDocumentosToAsignar(dfec_ent, ctip_docvta, ccod_ruta, ccod_modulo, ccod_cli);  
        }

        public resulMsgError asignarTransportista(List<InfoDocumentoAsignar> docasigs, Boolean forzarasig)
        {
            return com_documentocab.asignarTransportista(docasigs, forzarasig); 
        }

        public DataTable MostrarDocumentosToAnular(DateTime dfec_ent, int ccod_trans, int ctip_docvta)
        {
            return com_documentocab.MostrarDocumentosToAnular(dfec_ent, ccod_trans, ctip_docvta);  
        }

        public DataTable MostrarDocumentosToLiquidar(DateTime dfec_ent, int ctip_docvta, int ccod_condvta, int ccod_trans, int ccod_ruta, String ccod_modulo)
        {
            return com_documentocab.MostrarDocumentosToLiquidar(dfec_ent, ctip_docvta, ccod_condvta, ccod_trans, ccod_ruta, ccod_modulo);
        }

        public resulMsgError anularDocumento(List<InfoDocumentoAnular> docsanuls)
        {
            return com_documentocab.anularDocumento(docsanuls);  
        }

        public DataTable DocumentoPagoByCodDoc(long ccod_doc)
        {
            return com_documentocab.DocumentoPagoByCodDoc(ccod_doc);   
        }

        public resulMsgError liquidarDocumento(List<InfoDocumentoLiquidar> docsliqs)
        {
            return com_documentocab.liquidarDocumento(docsliqs);   
        }
    }
}
